Failure diagnosis is conducted by reading out information stored in an electronic control unit (ECU) through a control area network (CAN) protocol from a vehicular communication device with a tester. In communication with the tester, two temporary storage areas (buffer) for reception and transmission data are secured in the ECU.
The two buffers for reception and transmission each has a maximum memory size, so that, the buffers for the CAN protocol involves a memory size of total 8 k bytes (4 k bytes for each of reception and transmission).
To save the buffers, a ring buffer is adopted for simultaneously storing the reception and the transmission data. Here, all areas of the ring buffer can be used for either reception or transmission data with setting up a writing pointer and a reading pointer for indicating an address for writing and reading, respectively. For instance, as shown in FIG. 8, after a datum 1 of one byte is written, the writing pointer advances by one byte. By contrast, after the byte of the datum 1 is read out, the reading pointer advances by one byte.
International Organization for Standardization (ISO) develops standards for the CAN protocol. For instance, in ISO 15765-2, full duplex communication simultaneously executing reception and transmission is specified in the CAN protocol. In the full duplex communication, the ring buffer cannot be simply used as explained above.